Active cooling to reduce leakage power

ABSTRACT

Leakage power consumed by an integrated circuit is estimated as the difference between total power consumption and a nominal expected power consumption. Leakage power is reduced by cooling the integrated circuit in an active cooling system. By expending power in the active cooling system, the integrated circuit is cooled and the total power consumption is decreased. When the decrease in total power consumption is greater than the power expended in the cooling system, an overall power savings is achieved.

RELATED APPLICATION

This application is a Divisional of U.S. application Ser. No. 10/000,729filed Oct. 31, 2001 now U.S. Pat. No. 6,809,538 which is incorporatedherein by reference.

FIELD

The present invention relates generally to integrated circuits, and morespecifically to the reduction of leakage power in integrated circuits.

BACKGROUND OF THE INVENTION

Transistors within integrated circuits are becoming smaller. Each newgeneration of integrated circuits includes an ever increasing number ofthese smaller transistors. As transistors become smaller, the “leakagecurrent” through the transistors becomes larger.

Leakage current is current that conducts through a transistor even whenthe transistor is supposed to be off. In most circuit configurations,leakage current is undesirable because it consumes power withoutproducing useful work. Modern integrated circuits are experiencinglarger leakage currents as a percentage of total current consumptionbecause of the greater number of transistors, with each transistorhaving a larger leakage current.

Circuit techniques have been devised in attempts to reduce leakagecurrents. FIGS. 1A and 1B show the addition of a “sleep transistor”designed to reduce leakage current. FIG. 1A shows leakage currentflowing from power supply node 102, through the transistors withincircuit block 104 to reference node 106. FIG. 1A represents a circuitwith large leakage currents. FIG. 1B shows sleep transistor 110 inseries with the leakage current path. The sleep transistor is typicallya transistor with a large threshold voltage. Turning off sleeptransistor 110 when circuit block 104 is not active reduces the leakagecurrent.

Circuit techniques can be effective to reduce leakage current, buttypically require additional area on the integrated circuit die. Forexample, as shown in FIG. 1B, sleep transistor 110 is an addition to thecircuit. For large integrated circuits, many such sleep transistors canbe added resulting in considerable additional consumption of integratedcircuit die area.

For the reasons stated above, and for other reasons stated below whichwill become apparent to those skilled in the art upon reading andunderstanding the present specification, there is a need in the art foran alternate method and apparatus to reduce leakage current inintegrated circuits.

BRIEF DESCRIPTION OF THE DRAWINGS

FIGS. 1A and 1B show prior art circuits;

FIG. 2 shows a graph of relative leakage power versus temperature;

FIG. 3 shows a system to reduce leakage power consumption in anintegrated circuit;

FIG. 4 shows a graph of die temperature as a function of relative activecooling power;

FIG. 5 shows another system to reduce leakage power consumption in anintegrated circuit;

FIG. 6 shows a system to reduce leakage power consumption in aprocessor;

FIG. 7 shows a graph of characterization data for use in conjunctionwith the system of FIG. 6;

FIG. 8 shows another system to reduce leakage power consumption in aprocessor; and

FIG. 9 shows a flowchart of a method for reducing leakage powerconsumption in an integrated circuit.

DESCRIPTION OF EMBODIMENTS

In the following detailed description of the embodiments, reference ismade to the accompanying drawings that show, by way of illustration,specific embodiments in which the invention may be practiced. In thedrawings, like numerals describe substantially similar componentsthroughout the several views. These embodiments are described insufficient detail to enable those skilled in the art to practice theinvention. Other embodiments may be utilized and structural, logical,and electrical changes may be made without departing from the scope ofthe present invention. Moreover, it is to be understood that the variousembodiments of the invention, although different, are not necessarilymutually exclusive. For example, a particular feature, structure, orcharacteristic described in one embodiment may be included within otherembodiments. The following detailed description is, therefore, not to betaken in a limiting sense, and the scope of the present invention isdefined only by the appended claims, along with the full scope ofequivalents to which such claims are entitled.

The method and apparatus of the present invention provide a mechanism toreduce leakage power in an integrated circuit by cooling the integratedcircuit. Methods and apparatus are provided to measure total power inthe integrated circuit and conditionally apply power to a cooling systemto cool the integrated circuit. In some embodiments, decisions to coolthe integrated circuit are made solely as a function of the total powerconsumption. In other embodiments, leakage power consumption isestimated as a difference between total power consumption and a nominalexpected power, and the decision to cool the integrated circuit is afunction of the estimated leakage power.

FIG. 2 shows a graph of relative leakage power versus temperature. Graph200 illustrates how leakage power in an integrated circuit increasesexponentially as a function of temperature. For example, the increase inleakage power due to a die temperature rising from 60 degrees C. to 80degrees C. is smaller than the increase in leakage power when the dietemperature rises from 80 degrees C. to 100 degrees C.

As can be seen from FIG. 2, elevated die temperatures contribute heavilyto increased leakage power consumption in integrated circuits.

FIG. 3 shows a system to reduce leakage power consumption in anintegrated circuit. System 300 includes integrated circuit (IC) 302,integrated circuit cooling system 304, processor 306, memory 308,analog-to-digital converter (A/D) 310, and resistor 312. IC 302 is anintegrated circuit with many small geometry transistors that consumeleakage current (and therefore leakage power). Integrated circuitcooling system 304 provides cooling to IC 302 to reduce leakage power.Integrated circuit cooling system includes a control input node 340coupled to node 307, which provides control information from processor306.

Resistor 312 and A/D 310 form a power measuring device. The output ofA/D 310 represents the total current consumed, which is proportional topower. Any type of power measuring device can be used without departingfrom the scope of the present invention. In addition, resistor 312, A/D310, processor 306, and memory 308 form a feedback loop that measurestotal power consumption by IC 302, and directs cooling of IC 302 byintegrated circuit cooling system 304. In some embodiments, the feedbackloop measures instantaneous power consumption and directs cooling as afunction of the instantaneous power consumption. In other embodiments,processor 306 computes the total energy consumed over a period of timeand directs cooling as a function of the total energy consumption. Thiscan be useful to reduce energy consumption due to leakage, and toincrease battery life of portable products.

In operation, IC 302 consumes current that conducts from power supplynode 317 (Vcc) to reference node 315. This current passes throughresistor 312. The current passing through resistor 312 generates avoltage which is input to A/D 310. A/D 310 digitizes the voltage andgenerates a digital word on node 311 that represents the current, andtherefore the power, consumed by IC 302. Processor 306 reads the digitalword that represents the power consumption by the integrated circuit,and then conditionally commands cooling system 304 to expend power tocool IC 302. As shown in FIG. 2, cooling the integrated circuit reducesleakage power. If the amount of leakage power savings as a result ofcooling IC 302 exceeds the amount of power expended in integratedcircuit cooling system 304, then the operation of system 300 results inan overall power savings.

A/D 310 is shown driving “n” physical data lines represented by node311. One skilled in the art will appreciate that any number of datalines can be output from A/D 310 without departing from the scope of thepresent invention.

Processor 306 can be any type of processor capable of communicating withmemory 308, A/D 310, and integrated circuit cooling system 304. Examplesinclude, but are not limited to, a microprocessor, a digital signalprocessor, a graphics controller, and a microcontroller. Memory 308 canbe any type of article having a computer readable medium, such as afloppy disk, a hard disk, a random access memory (RAM), a read onlymemory (ROM), or a compact disc ROM (CD-ROM). In some embodiments,processor 306 reads instructions from memory 308 to perform methods ofthe present invention. For example, processor 306 can read instructionsfrom memory 308 to determine how much power to expend in cooling system304. Various method embodiments of the present invention are discussedin more detail below.

System 300 is shown having separate nodes 311, 309, and 307 used forcommunication between processor 306 and A/D 310, memory 308, and coolingsystem 304, respectively. In some embodiments, processor 306 includes aninput port dedicated to the reception of information from A/D 310, andan output port dedicated to communication with cooling system 304. Inother embodiments, A/D 310, cooling system 304, and memory 308 arememory-mapped peripherals, and nodes 311, 309, and 307 are schematicrepresentations of a common bus.

Cooling system 304 is an “active” cooling system that cools IC 302 whenpower is applied thereto. For example, a heat sink and fan incombination form an active cooling system, whereas a heat sink alone ispassive. Other types of active cooling systems are used in variousembodiments of the present invention. Some embodiments usethermoelectric cooling devices such as coolers that employ thePeltier-effect, where current flowing through dissimilar metals createsa temperature differential across the metallic junction. Otherembodiments use vapor phase cooling devices such as refrigerationdevices or heat pumps. The method and apparatus of the present inventionare not limited by the type of active cooling system employed: any typeof active cooling system can be employed without departing from thescope of the present invention.

In some embodiments, power consumption by IC 302 under variousconditions is characterized during manufacture, test, or when system 300is built or tested. This characterization results in informationdescribing nominal expected power consumption under differentconditions, and this information can be advantageously utilized byprocessor 306 during operation of system 300. For example, whenprocessor 306 has access to nominal expected power consumption data forIC 302, processor 306 can determine the amount of power being expendedbeyond the nominal expected power consumption. The characterization canbe performed as a function of any variable. For example, expected powercan be determined as a function of die temperature, operating speed,data load, or other operating condition. Processor 306 can utilize allof this information in determining whether to activate cooling system304 to reduce leakage power.

FIG. 4 shows a graph of die temperature as a function of relative activecooling power. The active cooling power referred to in graph 400represents the power expended in an active cooling system such asintegrated circuit cooling system 304 (FIG. 3). The die temperature ingraph 400 represents the temperature of the integrated circuit die beingcooled. Graph 400, like graph 200 (FIG. 2), is not linear. Graph 400shows that a greater incremental decrease in die temperature can beachieved at a lower relative cooling power. For example, as shown inFIG. 4, it takes approximately 1.5 times as much active cooling power tocool the die 20 degrees from 80 degrees C. to 60 degrees C. than to coolthe die 20 degrees from 100 degrees C. to 80 degrees C.

The active cooling power in graph 400 is shown as relative because theactual power needed to cool an integrated circuit die is a function ofthe integrated circuit. For example, for large integrated circuits withmany small geometry transistors, each unit of relative active coolingpower in graph 400 may represent many watts of power. In contrast, forvery small integrated circuits, each unit of relative active coolingpower may represent a fraction of one watt of power.

The combination of graphs 400 and 200 (FIG. 2) show that relativelysmall relative increases in active cooling power can produce pronouncedreductions in relative leakage power. Referring now back to FIG. 3,processor 306 can take advantage of this phenomenon by increasing theactive cooling power expended in integrated circuit cooling system 304.When the active cooling power expended in the cooling system is lessthan the leakage power saved in the integrated circuit, an overall powersavings is achieved.

FIG. 5 shows another system to reduce leakage power consumption in anintegrated circuit. System 500, like system 300 (FIG. 3), includes A/D310, processor 306, memory 308, IC 302, and cooling system 304. Incontrast to system 300, system 500 includes DC-DC converter 502,resistor 504, and capacitor 506. DC-DC (Direct Current—Direct Current)converter 502 converts a DC power supply voltage on node 317 (Vcc) to adifferent power supply voltage on node 503 to supply IC 302. DC-DC 502converter also outputs a signal on node 505.

The signal on node 505 gives an indication of current output, or“current draw,” from DC-DC converter 502 on node 503. In someembodiments, the signal on node 505 is a sawtooth waveform that is aresult of a switching element within DC-DC converter 502. In otherembodiments, the signal on node 505 is a pulse code modulated (PCM)signal that has a duty cycle that is proportional to current output onnode 503. In general, any signal format that gives an indication ofcurrent output on node 503 can be utilized without departing from thescope of the present invention.

Resistor 504 and capacitor 506 form a low-pass filter that converts thesignal on node 505 to a form suitable for input to A/D 310. A/D 310digitizes the voltage value output from the low-pass filter, and theremaining portions of system 500 function in a similar fashion to system300 (FIG. 3). Processor 306 receives from A/D 310 an indication of totalpower consumed in IC 302 and, as a function of total power consumptionalone or total power consumption combined with nominal expected powerconsumption, commands cooling system 304 to expend power to cool IC 302.In some embodiments, total energy consumption is computed from the totalpower consumption over time, and processor 306 commands cooling system304 to expend power as a function of the total energy consumption.

FIG. 6 shows a system to reduce leakage power consumption in aprocessor. System 600 includes processor 604, memory 602, cooling system608, A/D 606, and resistor 610. The total power consumption of processor604 is determined by the combination of resistor 610, A/D 606, andprocessor 604. This operation of determining total power consumption insystem 600 is similar to system 300 (FIG. 3), except that the ICconsuming the power and the IC performing the calculations are one andthe same.

Processor 604 communicates with memory 602 on node 603, A/D 606 on node607, and cooling system 608 on node 605. Each of these nodes can beseparate as schematically shown in the figure, or can be part of a busstructure.

In operation, processor 604 receives the indication of total powerconsumption on node 607, and conditionally commands cooling system 608to expend power in cooling processor 604. Processor 604 can utilize thetotal power consumption information alone to command cooling system 608to expend power, or can utilize the total power consumption informationin combination with other information to command cooling system 608 toexpend power.

For example, in some embodiments, processor 604 compares total powerconsumption to a threshold power level, and commands cooling system 608to turn on when the threshold is exceeded. In other embodiments,multiple thresholds exist, and processor 604 commands cooling system 608to expend a variable amount of power as a function of the number ofthresholds exceeded.

Also for example, in other embodiments, processor 604 maintains nominalexpected power consumption information, and conditionally commandscooling system 608 to expend power as a function of both total powerconsumption and nominal expected power consumption. Further, in someembodiments, total energy consumption is computed, and cooling system608 is commanded to expend power as a function of the total energyconsumption.

FIG. 7 shows a graph of characterization data for use in conjunctionwith the system of FIG. 6. Graph 700 shows nominal expected power as afunction of the current execution state of the processor. The executionstate of the processor can be any state information that affects thepower consumption of the processor. For example, the execution state canbe the frequency of operation, a software emulation mode, a protectedmode of operation versus an application level mode of operation, or thelike. For simplicity, graph 700 is shown with nominal expected power asa function of a single variable: percent software load. In someembodiments, other single variables are used as the dependent variable,and in other embodiments, multiple variables are used, resulting in amulti-dimensional graph. In general, any state information can beutilized in graph 700 without departing from the scope of the presentinvention.

The information presented in FIG. 7 is shown in graph form. In someembodiments, the information in graph 700 is maintained in table form inmemory that is accessible to a processor. For example, referring nowback to FIG. 6, the table can be maintained in memory 602. Whenprocessor 604 receives total power consumption information on node 607,processor 604 can retrieve nominal expected power information frommemory 602, and estimate leakage power as the difference. Processor 604can then conditionally command cooling system 608. In some embodiments,processor 604 commands cooling system 608 to turn on when the estimatedleakage power exceeds a threshold. In other embodiments, processor 604maintains multiple thresholds to which the estimated leakage power iscompared, and then commands cooling system 608 to expend a variableamount of power as a function of the number of thresholds exceeded. Instill other embodiments, processor 604 maintains data tables thatrepresent the data shown in FIGS. 2, 4, and 6, and determines anappropriate amount of power to be expended in cooling system 608 basedon an estimate of leakage power savings.

FIG. 8 shows another system to reduce leakage power consumption in aprocessor. System 800, like system 600 (FIG. 6), includes A/D 606,processor 604, memory 602, and cooling system 608. In contrast to system600, system 800 includes DC-DC converter 802, resistor 804, andcapacitor 806. DC-DC converter 802 converts a DC power supply voltage onnode 317 (Vcc) to a different power supply voltage on node 803 to supplyprocessor 604. DC-DC converter 802 also outputs a signal on node 805.

The signal on node 805 gives an indication of current output, or“current draw,” from DC-DC converter 802 on node 803. In someembodiments, the signal on node 805 is a sawtooth waveform that is aresult of a switching element within DC-DC converter 802. In otherembodiments, the signal on node 805 is a pulse code modulated (PCM)signal that has a duty cycle that is proportional to current output onnode 803. In general, any signal format that gives an indication ofcurrent output on node 803 can be utilized without departing from thescope of the present invention.

Resistor 804 and capacitor 806 form a low-pass filter that converts thesignal on node 805 to a form suitable for input to A/D 606. A/D 606digitizes the voltage value output from the low-pass filter, and theremaining portions of system 800 function in a similar fashion to system600 (FIG. 6). Processor 604 receives from A/D 606 an indication of totalpower consumed in processor 604 and, as a function of total powerconsumption alone or total power consumption combined with nominalexpected power consumption, commands cooling system 608 to expend powerto cool processor 604.

Systems represented by the various foregoing figures can be of any type.Examples of represented systems include computers (e.g., desktops,laptops, handhelds, servers, Web appliances, routers, etc.), wirelesscommunications devices (e.g., cellular phones, cordless phones, pagers,personal digital assistants, etc.), computer-related peripherals (e.g.,printers, scanners, monitors, etc.), entertainment devices (e.g.,televisions, radios, stereos, tape and compact disc players, videocassette recorders, camcorders, digital cameras, MP3 (Motion PictureExperts Group, Audio Layer 3) players, video games, watches, etc.), andthe like.

FIG. 9 shows a flowchart of a method for reducing leakage powerconsumption in an integrated circuit. Method 900 begins at 910 when afirst digital value is read. The first digital value represents totalpower consumption in an integrated circuit. In some embodiments, 910represents a processor such as processor 306 (FIGS. 3 and 5) reading adigital value from an A/D converter. This first digital value canrepresent total current as in FIGS. 3 and 5, or can represent actualpower. When the first digital value represents total current, theprocessor can multiply the total current and the operating voltage ofthe integrated circuit to arrive at the total power.

As described above, in some embodiments, method 900 is performed by aprocessor. In some of these embodiments, the integrated circuitreferenced in block 910 is separate from the processor. This correspondsto embodiments represented by FIGS. 3 and 5. In other embodiments, theintegrated circuit referenced in block 910 is also the processor thatperforms the method. This corresponds to embodiments represented byFIGS. 6 and 8, in which processor 604 can perform method 900. In theseembodiments, processor 604 reads a first digital value on node 607 thatrepresents the total power consumed in processor 604. The remainingdescription of method 900 refers to all of the embodiments describedherein, and is not limited by whether or not the measured power isconsumed by the processor that performs the method.

At 920, a determination is made whether the total power consumption isabove a threshold. In some embodiments, no further action is taken ifthe total power consumption is below the threshold. This can be usefulin part because the potential power savings may be slight when the totalpower consumption is below the threshold.

At 930, a nominal expected power level is looked up in a table as afunction of a current execution state of the integrated circuit. Thecurrent execution state can be any state information that affectsnominal expected power. For example, in some embodiments, the currentexecution state includes the percent software load as shown in FIG. 7.In some embodiments, the current execution state includes informationdescribing frequency of operation. Also in some embodiments, the currentexecution state can include information regarding environmentalconditions such as ambient temperature and die temperature.

“Expected power” describes the amount of power expected to be consumedin an integrated circuit. Many integrated circuits have normalvariations of expected power based on manufacturing variations. “Nominalexpected power” describes a nominal value for expected power consumptiongiven the normal variations found across large quantities of integratedcircuits.

At 940, the total power consumption is compared against the nominalexpected power level, and at 950, leakage power is estimated as thedifference between the total power consumption and the nominal expectedpower level. This leakage power estimate can be utilized to determinewhether power should be expended in a cooling device. In general, theprocessor performing method 900 also has access to information regardinghow much power can be saved by cooling the integrated circuit, and howmuch power should be expended in a cooling system to cool the integratedcircuit. Using all of the available information, the processorperforming method 900 endeavors to effect an overall power savings.

In some embodiments of method 900, actions described with respect toblocks 930, 940 and 950 are not performed. In these embodiments,decisions to cool the integrated circuit are made as a function of totalpower (see block 920), and not as a function of estimated leakage power.In other embodiments, actions described with respect to block 920 arenot performed. In these embodiments, decisions to cool the integratedcircuit are made as a function of estimated leakage power and not as afunction of total power. In still further embodiments, both total powerand estimated leakage power are considered when making decisionsregarding expending energy in a cooling system. Also, in someembodiments, total energy consumption is computed from the total powerconsumption over time, and decisions to cool the integrated circuit aremade as a function of the total energy consumed.

At 960, a second digital value is conditionally written to influence acooling system operable to cool the integrated circuit. For example, inone condition (total power below the threshold) the second digital valuemay not be written, thereby not influencing the cooling system. In otherconditions (total power is above the threshold or leakage power is abovea threshold), the second digital value may be written, therebyinfluencing the cooling system. The second digital value can be a singlebit of information that turns on or off the cooling system, or can be amulti-bit word that turns on or off the cooling system to a varyingdegree. Referring now back to FIGS. 3 and 5, the second digital value iswritten to node 307 by processor 306. In embodiments represented byFIGS. 6 and 8, the second digital value is written to node 605 byprocessor 604.

At 970, the second digital value is written when the total powerconsumption is above a threshold. As stated above, in some embodiments,the second digital value is conditionally written only as a function ofthe total power level. In other embodiments, the second digital value isconditionally written as a function of total power level as well as afunction of estimated leakage power. Block 970 describes all of theseembodiments.

At 980, power is applied to the cooling system in quantities sufficientto cool the integrated circuit enough to reduce leakage power. As statedabove, the processor performing method 900 can have access toinformation represented by graphs 200, 400, and 700, shown in FIGS. 2,4, and 7, respectively. Method 900 contemplates combining the necessaryinformation to ascertain the quantity of active cooling power useful toreduce leakage power.

At 990, power is increasingly applied to the cooling system until thereduced power attributable to leakage power is greater than the powerexpended in the cooling system. Utilizing information described in theprevious paragraph, the processor performing method 900 can determinehow much leakage power can be saved by cooling the integrated circuit.In addition, the processor can determine whether an overall powersavings can be achieved, and the amount of power to be expended in thecooling system to achieve that result.

The actions of the various method embodiments of the present inventioncan be performed in any order without departing from the scope of thepresent invention. Further, in some embodiments, not all of the listedactions are performed. For example, in some embodiments actionsdescribed in blocks 920 and 970 are omitted, and in other embodiments,actions described in blocks 930, 940, and 950 are omitted.

It is to be understood that the above description is intended to beillustrative, and not restrictive. Many other embodiments will beapparent to those of skill in the art upon reading and understanding theabove description. The scope of the invention should, therefore, bedetermined with reference to the appended claims, along with the fullscope of equivalents to which such claims are entitled.

1. A method of reducing leakage power in an integrated circuitcomprising: measuring total power consumed by the integrated circuit;determining the leakage power from a nominal expected power and thetotal power; and expending energy to cool the integrated circuit andreduce leakage power if the cooling energy expended is less than thereduction in leakage power.
 2. The method of claim 1 wherein expendingenergy comprises: comparing the leakage power to a threshold; and whenthe leakage power is above the threshold, applying power to anintegrated circuit cooling system.
 3. The method of claim 1 wherein theintegrated circuit is a processor, and wherein expending energycomprises the processor writing to a port that is coupled to anintegrated circuit cooling system.
 4. The method of claim 3 whereinmeasuring total power comprises: receiving an analog signal from a DC-DCconverter; converting the analog signal to a digital signal; andreceiving the digital signal at the processor.
 5. The method of claim 3wherein measuring total power comprises: measuring current into theprocessor; and multiplying the current into the processor with thevoltage across the processor.
 6. The method of claim 3 wherein expendingenergy comprises the processor determining an amount of power necessaryto cool the processor to reduce leakage power by a known amount, andapplying the necessary amount of power to the integrated circuit coolingsystem.
 7. The method of claim 1 wherein the method is performed in theorder presented.